﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Castle.MicroKernel.Registration;
using Castle.MicroKernel.SubSystems.Configuration;
using Castle.Windsor;
using Work.BL.Hibernate.Managers;
using Work.BL.Managers;

namespace Work.UI.Web.MVC.Code.WindsorInstallers
{
    public class ManagerInstaller : IWindsorInstaller
    {
        public void Install(IWindsorContainer container, IConfigurationStore store)
        {
            container.Register(Component.For<IUserManager>().ImplementedBy<HUserManager>().LifeStyle.Transient);
            container.Register(Component.For<IRegionManager>().ImplementedBy<HRegionManager>().LifeStyle.Transient);
            container.Register(Component.For<ISectionManager>().ImplementedBy<HSectionManager>().LifeStyle.Transient);
            container.Register(Component.For<IUserInRoleManager>().ImplementedBy<HUserInRoleManager>().LifeStyle.Transient);
            container.Register(Component.For<IProfileEmployeeManager>().ImplementedBy<HProfileEmployeeManager>().LifeStyle.Transient);
            container.Register(Component.For<IProfileEmployerManager>().ImplementedBy<HProfileEmployerManager>().LifeStyle.Transient);
            container.Register(Component.For<IRoleManager>().ImplementedBy<HRoleManager>().LifeStyle.Transient);
            container.Register(Component.For<IResumeManager>().ImplementedBy<HResumeManager>().LifeStyle.Transient);
            container.Register(Component.For<IEducationManager>().ImplementedBy<HEducationManager>().LifeStyle.Transient);
            container.Register(Component.For<IExpirianceManager>().ImplementedBy<HExpirianceManager>().LifeStyle.Transient);
            container.Register(Component.For<IVacancyManager>().ImplementedBy<HVacancyManager>().LifeStyle.Transient);

        }
    }
}